/**
 * 
 *  开发环境下的配置
 * 
 * 
 * **/

// 导入基础配置
const baseConfig = require('./webpack.config.js');

// 导入合并模块
const merge = require('merge');
// const {merge} = require('webpack-merge');
// 导入path模块
const path = require('path');
// 配置选项
const option = {
    // 模式 development（开发模式）  production（生产模式）
    mode: "development",
    optimization: {
        runtimeChunk: 'single'
    },
    // 配置devSever, 启动一个http服务
    devServer: {
        // 静态资源目录配置
        static: {
            directory: path.join(__dirname, 'dist'),
        },
        // 压缩
        compress: true,
        // 端口
        port: 9090,
        // 自动打开
        open: true,
        // open: {
        //     app: {
        //         // 指定浏览器名称 （默认浏览器）
        //         name: 'chrome'
        //     }
        // },
        // 网络代理（可以解决在开发环境中的一些跨域问题）
        // 这个http://localhost:3001服务数据只能在开发环境中，打包之后用不了
        // 亲测没问题
        // proxy: [
        //     {
        //         target: 'http://localhost:3001',// 需要代理的地址
        //         context: ['/', '/api'], // 匹配URL规则
        //         secure: false, // 默认情况下不接收转发到https的服务器上，如果希望支持，可以设置为false
        //         changeOrigin: true,// 它表示是否更新代理后请求的 headers 中host地址
        //     },
        // ],

        // 测试 （有问题）
        // proxy: {
        //     '/api': {
        //         target: 'http://localhost:3001',
        //         pathRewrite: { '^/api': '' },
        //     },
        // },
    },
}
// 当前配置和webpack.config.js配置进行合并
module.exports = merge(option, baseConfig);